package com.ssy.lingxi.marketing.model.bo;

import lombok.Getter;
import lombok.Setter;

import java.io.Serializable;
import java.math.BigDecimal;

/**
 * 活动商品详情BO
 * @author yzc
 * @version 2.0.0
 * @date 2021/11/23
 */
@Getter
@Setter
public class ActivityGoodsDetailBO implements Serializable {

    private static final long serialVersionUID = -2276489362703034192L;

    public ActivityGoodsDetailBO(Long id, Long activityId, Integer belongType, Long productId, Long skuId, BigDecimal price, BigDecimal preSelPrice, BigDecimal plummetPrice, BigDecimal activityPrice, BigDecimal deductionPrice, BigDecimal discount, Integer restrictNum, Integer restrictTotalNum, ActivityBO activityBO) {
        this.id = id;
        this.activityId = activityId;
        this.belongType = belongType;
        this.productId = productId;
        this.skuId = skuId;
        this.price = price;
        this.preSelPrice = preSelPrice;
        this.plummetPrice = plummetPrice;
        this.activityPrice = activityPrice;
        this.deductionPrice = deductionPrice;
        this.discount = discount;
        this.restrictNum = restrictNum;
        this.restrictTotalNum = restrictTotalNum;
        this.activityBO = activityBO;
    }

    /**
     * ID
     */
    private Long id;

    /**
     * 活动id
     */
    private Long activityId;

    /**
     * 所属类型 1-平台 2-商家
     */
    private Integer belongType;

    /**
     * 商品id
     */
    private Long productId;

    /**
     * skuId
     */
    private Long skuId;

    /**
     * 商品价格
     * */
    private BigDecimal price;

    /**
     * 预售价格
     * */
    private BigDecimal preSelPrice;

    /**
     * 直降价格/起始价格
     * */
    private BigDecimal plummetPrice;

    /**
     * 活动价格/团购价格/秒杀价格/单位定金/砍价底价
     * */
    private BigDecimal activityPrice;

    /**
     * 定金抵扣单价
     * */
    private BigDecimal deductionPrice;

    /**
     * 折扣（如85折，输入85，9折输入90, 最多保留一位小数，要求大于0且小于100）
     */
    private BigDecimal discount;

    /**
     * 个人限购数量
     */
    private Integer restrictNum;

    /**
     * 活动限购总数量
     * */
    private Integer restrictTotalNum;

    /**
     * 活动信息
     */
    private ActivityBO activityBO;
}
